/*
 ------------------------------------------------------------------------------
 Copyright (C) 1996-2001 Id Software, Inc.

 This file is part of the Quake source code.

 The Quake source code is free software; you can redistribute it and/or
 modify it under the terms of the GNU General Public License as published by
 the Free Software Foundation; either version 2 of the License, or (at your
 option) any later version.

 The Quake source code is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
 or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
 more details.

 You should have received a copy of the GNU General Public License along with
 the Quake source code; if not, write to the Free Software Foundation, Inc.,
 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
 ------------------------------------------------------------------------------
*/


//
// infoString.h - ...
//


#ifndef __INFOSTRING_H__
#define __INFOSTRING_H__


// Sets the value for the given key in an info string 
bool			Info_SetValueForKey (char *infoString, const char *key, const char *value);

// Gets the value for the given key in an info string
bool			Info_GetValueForKey (const char *infoString, const char *key, char *value);

// Removes the given key/value pair from an info string
void			Info_RemoveKey (char *infoString, const char *key);

// Iterates through all the key/value pairs in an info string
const char *	Info_NextPair (const char *infoString, char *key, char *value);

// Clears all the key/value pairs in an info string
void			Info_Clear (char *infoString);

// Prints all the key/value pairs in an info string
void			Info_Print (const char *infoString, void (*printf)(const char *fmt, ...));


#endif	// __INFOSTRING_H__